package com.tanjun.mallservice.web.service;

import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.tanjun.mallservice.web.orm.entity.MallPlu;
import com.tanjun.mallservice.web.service.request.MallPluRequest;
import com.tanjun.mallservice.web.service.request.QueryMallPluRequest;
import jakarta.validation.constraints.NotEmpty;

import java.util.Collection;
import java.util.List;

/**
 * @author jjtan
 * @description 针对表【mall_plu(商品信息)】的数据库操作Service
 * @createDate 2024-03-21 14:42:17
 */
public interface MallPluService extends IService<MallPlu> {
    /**
     * 根据pluId查询商品信息
     *
     * @param pluId
     * @return
     */
    MallPlu getPluById(Long pluId);

    /**
     * 新增或修改商品
     *
     * @param paramVo
     */
    void saveOrUpdate(MallPluRequest paramVo);

    /**
     * 分页查询数据
     *
     * @param page
     * @param paramVo
     * @return
     */
    Page<MallPlu> queryPagePlu(Page page, QueryMallPluRequest paramVo);

    /**
     * 根据ID返回商品信息
     * @param listPluIds
     * @return
     */
    List<MallPlu> listPluByIds(@NotEmpty Collection<Long> listPluIds);
}
